package com.chenjiajin.fastjson_test.jsoNObject;

import com.alibaba.fastjson.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class NullData {

    // 演示: JSONObject的使用 , 注意不是JSON那个
    public static void main(String[] args) {

        // Map 转 JSON
        Map<String, Object> map = new HashMap<>();
        map.put("username", "yaomy");
        map.put("password", "123");

        JSONObject json = new JSONObject(map);  // 因为JSONObject直接实现了Map<String, Object>接口
        System.err.println("json = " + json);
        // json = {"password":"123","username":"yaomy"}


        // JSON 转 String
        JSONObject json2 = new JSONObject();
        json2.put("username", "yaomy");
        json2.put("password", "123");
        String jsonStr = json2.toJSONString();
        System.err.println("jsonStr = " + jsonStr);
        // jsonStr = {"password":"123","username":"yaomy"}

        // JSON 转 Map
        JSONObject json3 = new JSONObject();
        json3.put("username", "yaomy");
        json3.put("password", "123");
        json3.forEach((key, value) -> System.out.println("k: " + key + ", v: " + value));
        // k: password, v: 123
        // k: username, v: yaomy


        // String 转 JSON
        String str = "{\"username\":\"yaomy\",\"password\":\"123\"}";
        JSONObject json4 = JSONObject.parseObject(str);
        json4.forEach((key, value) -> System.out.println("k: " + key + ", v: " + value));
        // k: password, v: 123
        // k: username, v: yaomy
    }

}